/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package gui;

import bean.Aula;
import bean.Curso;
import bean.Dia;
import bean.Disciplina;
import bean.Horarios;
import bean.Professor;

import controlador.ControladorCadastraHorario;
import controlador.ControladorProfessor;
import java.util.ArrayList;

import java.util.List;
import javax.swing.DefaultListModel;
import javax.swing.JOptionPane;

import javax.swing.table.DefaultTableModel;

/**
 *
 * @author Júnior
 */
public class PainelCadastraHorario extends javax.swing.JPanel {

    /**
     * Creates new form PainelCadastraHorario
     */
    List<Professor> professores;
    List<Curso> listaCursos;
    List<String> listaTurmas;
    List<Disciplina> listaDisciplinas, listaDisciplinasEx;
    List<Disciplina> listaDisciplinaExcluir = new ArrayList<>();
    List<Horarios> listaHorarios;
    List<Aula> listaAulas;
    DefaultListModel<String> modelListaDisciplinas = new DefaultListModel<>();
    DefaultTableModel tabelaHorario = new DefaultTableModel(new String[]{"Início", "Fim", "Segunda", "Terça", "Quarta", "Quinta", "Sexta"}, 0) {
        @Override
        public boolean isCellEditable(int row, int column) {
            return false;
        }
    };

    public PainelCadastraHorario() {
        initComponents();
        jButtonExcluir.setEnabled(false);
        jTableCadastraHorario.getColumn("Início").setPreferredWidth(20);
        jTableCadastraHorario.getColumn("Fim").setPreferredWidth(20);
        listaCurso();
        
        jButtonAtualizar.setEnabled(false);
        if (jComboBoxCurso.getItemCount() > 0) {
            preencheComboProfessor();
            listaTurma();
            preencheTabela();
            novoHorario();
            novoHorarioX();
            //listaDisciplina();

        }

    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jLabel1 = new javax.swing.JLabel();
        jComboBoxTurma = new javax.swing.JComboBox();
        jLabel5 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jComboBoxCurso = new javax.swing.JComboBox();
        jComboBoxTurno = new javax.swing.JComboBox();
        jPanelBotoes = new javax.swing.JPanel();
        jButtonNovo = new javax.swing.JButton();
        jButtonSalvar = new javax.swing.JButton();
        jButtonExcluir = new javax.swing.JButton();
        jButtonBuscar = new javax.swing.JButton();
        jButtonAtualizar = new javax.swing.JButton();
        jScrollPane1 = new javax.swing.JScrollPane();
        jTableCadastraHorario = new javax.swing.JTable();
        jButtonListarDisciplinas = new javax.swing.JButton();
        jScrollPane2 = new javax.swing.JScrollPane();
        jListDisciplinas = new javax.swing.JList();
        jButtonAdicionarDisciplina = new javax.swing.JButton();
        jButtonExcluirDisciplina = new javax.swing.JButton();
        JComboBoxProfessor = new javax.swing.JComboBox();

        setMaximumSize(new java.awt.Dimension(830, 512));
        setMinimumSize(new java.awt.Dimension(830, 512));

        jLabel1.setFont(new java.awt.Font("Tahoma", 0, 24)); // NOI18N
        jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jLabel1.setText("Horário");

        jComboBoxTurma.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jComboBoxTurma.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jComboBoxTurmaActionPerformed(evt);
            }
        });

        jLabel5.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jLabel5.setText("Turma :");

        jLabel2.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jLabel2.setText("Curso :");

        jLabel4.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jLabel4.setText("Turno :");

        jComboBoxCurso.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jComboBoxCurso.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jComboBoxCursoActionPerformed(evt);
            }
        });

        jComboBoxTurno.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jComboBoxTurno.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Manhã", "Tarde", "Noite" }));
        jComboBoxTurno.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jComboBoxTurnoActionPerformed(evt);
            }
        });

        jPanelBotoes.setLayout(new java.awt.GridBagLayout());

        jButtonNovo.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jButtonNovo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagens/Copy.png"))); // NOI18N
        jButtonNovo.setText("Novo");
        jButtonNovo.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButtonNovoActionPerformed(evt);
            }
        });
        jPanelBotoes.add(jButtonNovo, new java.awt.GridBagConstraints());

        jButtonSalvar.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jButtonSalvar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagens/Add.png"))); // NOI18N
        jButtonSalvar.setText("Salvar");
        jButtonSalvar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButtonSalvarActionPerformed(evt);
            }
        });
        jPanelBotoes.add(jButtonSalvar, new java.awt.GridBagConstraints());

        jButtonExcluir.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jButtonExcluir.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagens/Delete.png"))); // NOI18N
        jButtonExcluir.setText("Excluir");
        jButtonExcluir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButtonExcluirActionPerformed(evt);
            }
        });
        jPanelBotoes.add(jButtonExcluir, new java.awt.GridBagConstraints());

        jButtonBuscar.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jButtonBuscar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagens/Find.png"))); // NOI18N
        jButtonBuscar.setText("Buscar");
        jButtonBuscar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButtonBuscarActionPerformed(evt);
            }
        });
        jPanelBotoes.add(jButtonBuscar, new java.awt.GridBagConstraints());

        jButtonAtualizar.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jButtonAtualizar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagens/Load.png"))); // NOI18N
        jButtonAtualizar.setText("Atualizar");
        jButtonAtualizar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButtonAtualizarActionPerformed(evt);
            }
        });
        jPanelBotoes.add(jButtonAtualizar, new java.awt.GridBagConstraints());

        jTableCadastraHorario.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jTableCadastraHorario.setModel(tabelaHorario);
        jTableCadastraHorario.setColumnSelectionAllowed(true);
        jTableCadastraHorario.getTableHeader().setReorderingAllowed(false);
        jScrollPane1.setViewportView(jTableCadastraHorario);
        jTableCadastraHorario.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);

        jButtonListarDisciplinas.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jButtonListarDisciplinas.setText("Listar Disciplinas");
        jButtonListarDisciplinas.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButtonListarDisciplinasActionPerformed(evt);
            }
        });

        jListDisciplinas.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jListDisciplinas.setModel(modelListaDisciplinas);
        jListDisciplinas.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        jScrollPane2.setViewportView(jListDisciplinas);

        jButtonAdicionarDisciplina.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jButtonAdicionarDisciplina.setText("Adicionar");
        jButtonAdicionarDisciplina.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButtonAdicionarDisciplinaActionPerformed(evt);
            }
        });

        jButtonExcluirDisciplina.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        jButtonExcluirDisciplina.setText("Excluir");
        jButtonExcluirDisciplina.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButtonExcluirDisciplinaActionPerformed(evt);
            }
        });

        JComboBoxProfessor.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
        JComboBoxProfessor.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JComboBoxProfessorActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(10, 10, 10)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 810, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(0, 10, Short.MAX_VALUE))
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                        .addComponent(jLabel5)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jComboBoxTurma, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                        .addComponent(jLabel2)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jComboBoxCurso, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                        .addComponent(jLabel4)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jComboBoxTurno, javax.swing.GroupLayout.PREFERRED_SIZE, 151, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jButtonListarDisciplinas, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JComboBoxProfessor, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addComponent(jButtonAdicionarDisciplina)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(jButtonExcluirDisciplina, javax.swing.GroupLayout.PREFERRED_SIZE, 82, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 201, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap())
            .addComponent(jPanelBotoes, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
            .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );

        layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jButtonAdicionarDisciplina, jButtonExcluirDisciplina});

        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 13, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(JComboBoxProfessor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(jButtonListarDisciplinas)))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel2)
                            .addComponent(jComboBoxCurso, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel4)
                            .addComponent(jComboBoxTurno, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel5)
                            .addComponent(jComboBoxTurma, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jButtonAdicionarDisciplina)
                    .addComponent(jButtonExcluirDisciplina))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 218, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jPanelBotoes, javax.swing.GroupLayout.PREFERRED_SIZE, 53, javax.swing.GroupLayout.PREFERRED_SIZE))
        );
    }// </editor-fold>//GEN-END:initComponents

    private void jButtonListarDisciplinasActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonListarDisciplinasActionPerformed

        listaDisciplina();


    }//GEN-LAST:event_jButtonListarDisciplinasActionPerformed

    private void jComboBoxTurnoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBoxTurnoActionPerformed
        if (listaCursos.isEmpty()) {
            //JOptionPane.showMessageDialog(null, "Não há Cursos Cadastrados");
        } else {
            preencheTabela();
            jButtonSalvar.setEnabled(true);
            jButtonAtualizar.setEnabled(false);
            jButtonExcluir.setEnabled(false);
        }
        //listaTurma();
        //modelListaDisciplinas.removeAllElements();
    }//GEN-LAST:event_jComboBoxTurnoActionPerformed

    private void jComboBoxCursoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBoxCursoActionPerformed
        listaTurma();
        jButtonSalvar.setEnabled(true);
        jButtonAtualizar.setEnabled(false);
        jButtonExcluir.setEnabled(false);
    }//GEN-LAST:event_jComboBoxCursoActionPerformed

    private void jButtonAdicionarDisciplinaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonAdicionarDisciplinaActionPerformed
    	if(listaCursos.isEmpty()){
        	JOptionPane.showMessageDialog(null, "Não há Cursos Cadastrados");
        }else if (listaHorarios.isEmpty()) {
            JOptionPane.showMessageDialog(null, "Não há horas das aulas cadastradas para o turno: "+turno());
        } else {
            int opcao = jListDisciplinas.getSelectedIndex();
            if (opcao < 0) {
                JOptionPane.showMessageDialog(null, "Escolha uma disciplina");
            } else {
                int x, y;
                x = jTableCadastraHorario.getSelectedRow();
                y = jTableCadastraHorario.getSelectedColumn();
                if (x < 0 || y < 0) {
                    JOptionPane.showMessageDialog(null, "Escolha a célula para adicionar a disciplina");

                } else if (y < 2) {
                    JOptionPane.showMessageDialog(null, "Escolha a célula entre segunda e sexta");
                } else {
                    tabelaHorario.setValueAt(listaDisciplinas.get(opcao).getNome(), x, y);

                }

            }
        }
    }//GEN-LAST:event_jButtonAdicionarDisciplinaActionPerformed

    private void jButtonExcluirDisciplinaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonExcluirDisciplinaActionPerformed
    	if(listaCursos.isEmpty()){
        	JOptionPane.showMessageDialog(null, "Não há Cursos Cadastrados");
        }else if (listaHorarios.isEmpty()) {
            JOptionPane.showMessageDialog(null, "Não há horas das aulas cadastradas para o turno: "+turno());
        } else {
            int x, y;
            x = jTableCadastraHorario.getSelectedRow();
            y = jTableCadastraHorario.getSelectedColumn();
            if (x < 0 || y < 0) {
                JOptionPane.showMessageDialog(null, "Escolha a célula para remover a disciplina");

            } else if (y < 2) {
                JOptionPane.showMessageDialog(null, "Escolha a célula entre segunda e sexta");
            } else {
                if (tabelaHorario.getValueAt(x, y) == null) {

                } else {

                    listaDisciplinaExcluir.add(pegaDisciplina(tabelaHorario.getValueAt(x, y).toString()));
                    Disciplina d = null;
                    tabelaHorario.setValueAt(d, x, y);                
                }
                
            }
        }
    }//GEN-LAST:event_jButtonExcluirDisciplinaActionPerformed

    private void jButtonSalvarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonSalvarActionPerformed
        jButtonExcluir.setEnabled(false);
        if(listaCursos.isEmpty()){
        	JOptionPane.showMessageDialog(null, "Não há Cursos Cadastrados");
        }else if (listaHorarios.isEmpty()) {
            JOptionPane.showMessageDialog(null, "Não há horas das aulas cadastradas para o turno: "+turno());
        } else if (existe() == 0) {
            JOptionPane.showMessageDialog(null, "Não há Disciplina(s) cadastrada(s) para o Curso selecionado.");
        } else if (existe() == 2) {
            JOptionPane.showMessageDialog(null, "Não há disciplina adicionadas na tabela");
        } else {
            salvaHorarios();
            JOptionPane.showMessageDialog(null, "Aulas cadastradas com sucesso");
            jButtonSalvar.setEnabled(false);
            jButtonAtualizar.setEnabled(true);
        }


    }//GEN-LAST:event_jButtonSalvarActionPerformed

    private void jButtonExcluirActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonExcluirActionPerformed
        ControladorCadastraHorario ch = new ControladorCadastraHorario();
        int opcao = JOptionPane.showConfirmDialog(null, "Tem certeza da exclusão?", "Excluir", JOptionPane.YES_NO_OPTION);
        if (opcao == JOptionPane.YES_OPTION) {
            for (int i = 0; i < listaDisciplinaExcluir.size(); i++) {
                ch.removeAula(listaDisciplinaExcluir.get(i).getCodDisciplina());
            }
            excluiHorarios();
            tabelaHorario.setNumRows(0);
            preencheTabela();
            modelListaDisciplinas.removeAllElements();
            JOptionPane.showMessageDialog(null, "Aulas removidas com sucesso");
            jButtonSalvar.setEnabled(true);
            jButtonAtualizar.setEnabled(false);
            jButtonExcluir.setEnabled(false);
        } else {
            JOptionPane.showMessageDialog(null,
                    "Registros não excluído");
        }

    }//GEN-LAST:event_jButtonExcluirActionPerformed

    private void jButtonBuscarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonBuscarActionPerformed
        if (listaCursos.isEmpty()) {
            JOptionPane.showMessageDialog(null, "Não há Cursos Cadastrados");
        } else {
            novoHorario();
            String turno = turno();
            int opcao = jComboBoxCurso.getSelectedIndex();
            int opcao2 = jComboBoxTurma.getSelectedIndex();

            if (opcao2 < 0) {
                JOptionPane.showMessageDialog(null, "Não há Disciplina(s) cadastrada(s) para o Curso selecionado.");
            } else {
                //listaDisciplina();
                modelListaDisciplinas.removeAllElements();
                Curso curso = listaCursos.get(opcao);
                ControladorCadastraHorario ch = new ControladorCadastraHorario();
                listaAulas = ch.listaAula(curso.getCodCurso(), turno.substring(0, 1), listaTurmas.get(opcao2));
                if (!listaAulas.isEmpty()) {
                    jButtonSalvar.setEnabled(false);
                    jButtonAtualizar.setEnabled(true);
                    jButtonExcluir.setEnabled(true);
                } else {
                    JOptionPane.showMessageDialog(null, "Não há Horário cadastrado para o Curso: " + jComboBoxCurso.getSelectedItem() + " Turma: " + jComboBoxTurma.getSelectedItem());
                    jButtonExcluir.setEnabled(false);
                    jButtonSalvar.setEnabled(true);
                    jButtonAtualizar.setEnabled(false);
                }

                if (turno.equals("Manhã")) {
                    montaTabela();
                } else if (turno.equals("Tarde")) {
                    montaTabela();
                } else {
                    montaTabela();
                }
            }
        }
    }//GEN-LAST:event_jButtonBuscarActionPerformed

    private void jButtonAtualizarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonAtualizarActionPerformed
        ControladorCadastraHorario ch = new ControladorCadastraHorario();
        int opcao = JOptionPane.showConfirmDialog(null, "Tem certeza da Atualização?", "Atualizar", JOptionPane.YES_NO_OPTION);
        if (opcao == JOptionPane.YES_OPTION) {
            for (int i = 0; i < listaDisciplinaExcluir.size(); i++) {
                ch.removeAula(listaDisciplinaExcluir.get(i).getCodDisciplina());
            }
            excluiHorarios();
            salvaHorarios();
            JOptionPane.showMessageDialog(null, "Aulas atualizadas com sucesso");
        } else {
            JOptionPane.showMessageDialog(null,
                    "Registros não atualizados");
        }
    }//GEN-LAST:event_jButtonAtualizarActionPerformed

    private void jButtonNovoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonNovoActionPerformed
        jButtonExcluir.setEnabled(false);
        if(listaCursos.isEmpty()){
        	JOptionPane.showMessageDialog(null, "Não há Cursos Cadastrados");
        }else if (listaHorarios.isEmpty()) {
            JOptionPane.showMessageDialog(null, "Não há horas das aulas cadastradas para o turno: "+turno());
        } else{
        novoHorario();
        novoHorarioX();
        }
    }//GEN-LAST:event_jButtonNovoActionPerformed

    private void jComboBoxTurmaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBoxTurmaActionPerformed
        modelListaDisciplinas.removeAllElements();
        preencheTabela();
        jButtonSalvar.setEnabled(true);
        jButtonAtualizar.setEnabled(false);
        jButtonExcluir.setEnabled(false);
    }//GEN-LAST:event_jComboBoxTurmaActionPerformed

    private void JComboBoxProfessorActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JComboBoxProfessorActionPerformed
        modelListaDisciplinas.removeAllElements();
    }//GEN-LAST:event_JComboBoxProfessorActionPerformed

    private void listaCurso() {

        ControladorCadastraHorario ch = new ControladorCadastraHorario();
        listaCursos = ch.listaCurso();
        int t = listaCursos.size();
        for (int i = 0; i < t; i++) {
            Curso curso = listaCursos.get(i);
            jComboBoxCurso.addItem(curso.getNome());

        }

    }

    private void listaTurma() {
        int opcao = jComboBoxCurso.getSelectedIndex();
        if (listaCursos.isEmpty()) {
            JOptionPane.showMessageDialog(null, "Não há Cursos Cadastrados");
        } else {
            Curso curso = listaCursos.get(opcao);
            jComboBoxTurma.removeAllItems();
            ControladorCadastraHorario ch = new ControladorCadastraHorario();

            listaTurmas = ch.listaTurma(curso.getCodCurso());
            int t = listaTurmas.size();
            for (int i = 0; i < t; i++) {

                jComboBoxTurma.addItem(listaTurmas.get(i));

            }
        }
    }

    private void listaDisciplina() {
        modelListaDisciplinas.removeAllElements();
        int opcao = jComboBoxCurso.getSelectedIndex();
        int opcao2 = jComboBoxTurma.getSelectedIndex();
        int opcao3 = JComboBoxProfessor.getSelectedIndex();
        if (opcao2 < 0) {
            JOptionPane.showMessageDialog(null, "Não há Disciplina(s) cadastrada(s) para o Curso selecionado.");
        } else {
            Curso curso = listaCursos.get(opcao);
            ControladorCadastraHorario ch = new ControladorCadastraHorario();
            listaDisciplinas = ch.listaDisciplina(curso.getCodCurso(), listaTurmas.get(opcao2), professores.get(opcao3));
            listaDisciplinasEx = ch.listaDisciplina(curso.getCodCurso(), listaTurmas.get(opcao2));
            int t = listaDisciplinas.size();
            if (t == 0) {
                JOptionPane.showMessageDialog(null, "Não há Disciplina(s) cadastrada(s) para o Professor selecionado.");
            } else {
                for (int i = 0; i < t; i++) {
                    modelListaDisciplinas.add(i, listaDisciplinas.get(i).getCodDisciplina() + " - " + listaDisciplinas.get(i).getNome());
                }
            }
        }

    }

    private void preencheTabela() {
        String turno;
        int opcao = jComboBoxTurno.getSelectedIndex();
        if (opcao == 0) {
            turno = "M";

        } else if (opcao == 1) {
            turno = "T";

        } else {
            turno = "N";

        }
        tabelaHorario.setNumRows(0);
        ControladorCadastraHorario ch = new ControladorCadastraHorario();
        listaHorarios = ch.lista(turno);
        int t = listaHorarios.size();
        for (int i = 0; i < t; i++) {
            Horarios horario = listaHorarios.get(i);
            tabelaHorario.addRow(new Object[]{horario.getInicio(), horario.getFim()});

        }
    }

    private Disciplina pegaDisciplina(String nome) {

        Disciplina d = new Disciplina();
        
        for (int i = 0; i < listaDisciplinasEx.size(); i++) {
            if (listaDisciplinasEx.get(i).getNome().equals(nome)) {
                d = listaDisciplinasEx.get(i);
                break;
            }
        }

        return d;
    }

    private void excluiHorarios() {
        for (int i = 0; i < listaHorarios.size(); i++) {
            for (int j = 2; j < 7; j++) {
                Object vazio = tabelaHorario.getValueAt(i, j);
                if (vazio == null) {
                } else {
                    Disciplina d = (pegaDisciplina(tabelaHorario.getValueAt(i, j).toString()));
                    ControladorCadastraHorario ch = new ControladorCadastraHorario();
                    ch.removeAula(d.getCodDisciplina());
                }
            }
        }

    }

    private void salvaHorarios() {
        for (int i = 0; i < listaHorarios.size(); i++) {
            for (int j = 2; j < 7; j++) {
                Aula aula = new Aula();
                Object vazio = tabelaHorario.getValueAt(i, j);
                if (vazio == null) {
                } else {

                    aula.setHorario(listaHorarios.get(i));
                    aula.setDisciplina(pegaDisciplina(tabelaHorario.getValueAt(i, j).toString()));
                    Dia d = new Dia();

                    switch (j) {

                        case 2:
                            d.setCodDia("Seg");
                            aula.setDia(d);

                            break;
                        case 3:
                            d.setCodDia("Ter");
                            aula.setDia(d);

                            break;
                        case 4:
                            d.setCodDia("Qua");
                            aula.setDia(d);

                            break;
                        case 5:
                            d.setCodDia("Qui");
                            aula.setDia(d);

                            break;
                        case 6:
                            d.setCodDia("Sex");
                            aula.setDia(d);

                            break;
                    }

                    ControladorCadastraHorario ch = new ControladorCadastraHorario();
                    ch.salvaAula(aula);
                }
            }
        }
        /*tabelaHorario.setNumRows(0);
         String turno;
         int opcao = jComboBoxTurno.getSelectedIndex();
         if (opcao == 0) {
         turno = "M";
         } else if (opcao == 1) {
         turno ="T";
         } else {
         turno ="N";
         }
         preencheTabela(turno);*/
        // modelListaDisciplinas.removeAllElements();

    }

    private void novoHorario() {
        for (int i = 0; i < listaHorarios.size(); i++) {
            for (int j = 2; j < 7; j++) {
                Disciplina d = null;
                tabelaHorario.setValueAt(d, i, j);

            }
        }

    }

    private void novoHorarioX() {
        jButtonSalvar.setEnabled(true);
        jButtonAtualizar.setEnabled(false);
        modelListaDisciplinas.removeAllElements();
        //jComboBoxCurso.setSelectedIndex(0);
//        jComboBoxTurma.setSelectedIndex(0);
        jComboBoxTurno.setSelectedIndex(0);
        JComboBoxProfessor.setSelectedIndex(0);
    }

    private void montaTabela() {
        int t = listaAulas.size();
        int y = 0;
        for (int i = 0; i < t; i++) {
            Horarios h = listaAulas.get(i).getHorario();
            int x = h.getCodHorario();
            for (int j = 0; j < listaHorarios.size(); j++) {
                if (listaHorarios.get(j).getCodHorario() != x) {
                } else {
                    y = j;
                    break;
                }
            }

            switch (listaAulas.get(i).getDia().getCodDia()) {
                case "Seg":
                    tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), y, 2);
                    break;
                case "Ter":
                    tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), y, 3);
                    break;
                case "Qua":
                    tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), y, 4);
                    break;
                case "Qui":
                    tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), y, 5);
                    break;
                default:
                    tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), y, 6);
                    break;
            }

        }
    }

    private int existe() {
        int a = 0;
        boolean ex = false;
        // String turno = turno();
        //int opcao = jComboBoxCurso.getSelectedIndex();
        int opcao2 = jComboBoxTurma.getSelectedIndex();

        if (opcao2 < 0) {
            //JOptionPane.showMessageDialog(null, "Não há Turma(s) cadastrada(s) para o turno: " + turno);
        } else {
            //listaDisciplina();
            /*Curso curso = listaCursos.get(opcao);
             ControladorCadastraHorario ch = new ControladorCadastraHorario();
             listaAulas2 = ch.listaAula(curso.getCodCurso(), turno.substring(0, 1), listaTurmas.get(opcao2));*/

            for (int i = 0; i < listaHorarios.size(); i++) {
                if (ex) {

                    break;
                }
                for (int j = 2; j < 7; j++) {
                    if (ex) {

                        break;
                    }

                    Object vazio = tabelaHorario.getValueAt(i, j);
                    if (vazio == null) {

                        if ((i == listaHorarios.size() - 1) && (j == 6)) {
                            a = 2;
                        }
                    } else {
                        /* Disciplina d = (pegaDisciplina(tabelaHorario.getValueAt(i, j).toString()));
                         if (listaAulas2.isEmpty()) {
                         a = 3;
                         ex = true;
                         break;
                         } else {

                         for (int k = 0; k < listaAulas2.size(); k++) {

                         if (listaAulas2.get(k).getDisciplina().getNome().equals(d.getNome())) {
                         a = 1;
                         ex = true;
                         System.out.println("break 3");
                         break;

                         }
                         }

                         }*/
                        a = 3;
                        ex = true;
                        break;

                    }

                }
            }
        }
        return a;
    }

    private String turno() {
        String turno;
        int opcao3 = jComboBoxTurno.getSelectedIndex();
        if (opcao3 == 0) {
            turno = "Manhã";
        } else if (opcao3 == 1) {
            turno = "Tarde";
        } else {
            turno = "Noite";
        }
        return turno;
    }

    private void preencheComboProfessor() {

        ControladorProfessor cp = new ControladorProfessor();

        professores = cp.listar();

        for (int i = 0; i < professores.size(); i++) {

            Professor p = professores.get(i);

            JComboBoxProfessor.addItem(p.getNome());
        }
    }
    /* private void buscarManha() {
     int t = listaAulas.size();
     for (int i = 0; i < t; i++) {
     Horarios h = listaAulas.get(i).getHorario();
     int x = h.getCodHorario();

     switch (x) {
     case 1:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 6);
     break;
     }
     break;
     case 2:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 6);
     break;
     }
     break;
     case 3:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 6);
     break;
     }
     break;
     case 4:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 6);
     break;
     }
     break;
     case 5:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 6);
     break;
     }
     break;

     }

     }
     }

     private void buscarTarde() {
     int t = listaAulas.size();
     for (int i = 0; i < t; i++) {
     Horarios h = listaAulas.get(i).getHorario();
     int x = h.getCodHorario();

     switch (x) {
     case 6:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 6);
     break;
     }
     break;
     case 7:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 6);
     break;
     }
     break;
     case 8:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 6);
     break;
     }
     break;
     case 9:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 6);
     break;
     }
     break;
     case 10:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 6);
     break;
     }
     break;

     }

     }
     }

     private void buscarNoite() {
     int t = listaAulas.size();
     for (int i = 0; i < t; i++) {
     Horarios h = listaAulas.get(i).getHorario();
     int x = h.getCodHorario();

     switch (x) {
     case 11:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 0, 6);
     break;
     }
     break;
     case 12:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 1, 6);
     break;
     }
     break;
     case 13:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 2, 6);
     break;
     }
     break;
     case 14:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 3, 6);
     break;
     }
     break;
     case 15:
     switch (listaAulas.get(i).getDia().getCodDia()) {
     case "Seg":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 2);
     break;
     case "Ter":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 3);
     break;
     case "Qua":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 4);
     break;
     case "Qui":
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 5);
     break;
     default:
     tabelaHorario.setValueAt(listaAulas.get(i).getDisciplina().getNome(), 4, 6);
     break;
     }
     break;

     }

     }
     }
     */

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JComboBox JComboBoxProfessor;
    private javax.swing.JButton jButtonAdicionarDisciplina;
    private javax.swing.JButton jButtonAtualizar;
    private javax.swing.JButton jButtonBuscar;
    private javax.swing.JButton jButtonExcluir;
    private javax.swing.JButton jButtonExcluirDisciplina;
    private javax.swing.JButton jButtonListarDisciplinas;
    private javax.swing.JButton jButtonNovo;
    private javax.swing.JButton jButtonSalvar;
    private javax.swing.JComboBox jComboBoxCurso;
    private javax.swing.JComboBox jComboBoxTurma;
    private javax.swing.JComboBox jComboBoxTurno;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JList jListDisciplinas;
    private javax.swing.JPanel jPanelBotoes;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane2;
    private javax.swing.JTable jTableCadastraHorario;
    // End of variables declaration//GEN-END:variables
}
